<template>
    <div class="qingwu">
        <div class="admin_table_page_title">缴费记录</div>
        <div class="unline underm"></div>

        <estate-search :searchConfig="searchConfig" @searchParams="search"></estate-search>

        <div class="admin_table_handle_btn">
            <a-button @click="$router.push('/Estate/adv_positions/form')" type="primary" icon="plus">添加</a-button>
            <a-button class="admin_delete_btn" type="danger" icon="delete" @click="del">批量删除</a-button>
        </div>
        <div class="admin_table_list">
            <a-table :columns="columns" :data-source="list" :pagination="false" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" row-key="id">
                <span slot="fee" slot-scope="rows">
                    <a-tag v-if="rows.feeType==1" color="orange">电费</a-tag>
                    <a-tag v-if="rows.feeType==2" color="blue">水费</a-tag>
                    <a-tag v-if="rows.feeType==3" color="green">物业费</a-tag>
                </span>
                <span slot="pay" slot-scope="rows">
                    <a-tag v-if="rows.pay_type==1" color="orange">微信公众号支付</a-tag>
                    <a-tag v-if="rows.pay_type==2" color="blue">微信小程序支付</a-tag>
                    <a-tag v-if="rows.pay_type==3" color="green">支付宝支付</a-tag>
                </span>
            </a-table>
        </div>
    </div>
</template>

<script>
import estateSearch from '@/components/estate/search'
export default {
    components: {estateSearch,},
    props: {},
    data() {
        return {
            params:{
                page:1,
                per_page:30,
            },
            total:0, //总页数
            searchConfig:[
                {label:'用户名',name:'username',type:'text'},
                {label:'订单号',name:'orderNo',type:'text'},
                {label:'支付单号',name:'pay_no',type:'text'},
            ],
            selectedRowKeys:[], // 被选择的行
            columns:[
                {title:'ID',fixed:'left',dataIndex:'id'},
                {title:'订单号',dataIndex:'orderNo'},
                {title:'缴费类型',key:'id',scopedSlots: { customRender: 'fee' }},
                {title:'缴费金额',dataIndex:'paymentMoney'},
                {title:'缴费人',dataIndex:'username'},
                {title:'微信订单号',dataIndex:'pay_no'},
                {title:'支付方式',key:'pay_type',scopedSlots: {customRender: 'pay'}},
                {title:'生成时间',dataIndex:'create_time'},
                {title:'支付时间',dataIndex:'paymentTime'},
                {title:'操作',key:'id',fixed:'right',scopedSlots: { customRender: 'action' }},
            ],
            list:[],
        };
    },
    watch: {},
    computed: {},
    methods: {
        search(params){
            let page = this.params.page;
            let per_page = this.params.per_page;
            this.params = params;
            this.params.page = page;
            this.params.per_page = per_page;
            this.onload();
        },
        // 选择框被点击
        onSelectChange(selectedRowKeys) {
            this.selectedRowKeys = selectedRowKeys;
        },
        // 删除
        del(){
            if(this.selectedRowKeys.length==0){
                return this.$message.error('未选择数据.');
            }
            this.$confirm({
                title: '你确定要删除选择的数据？',
                content: '确定删除后无法恢复.',
                okText: '是',
                okType: 'danger',
                cancelText: '取消',
                onOk:()=> {
                    let ids = this.selectedRowKeys.join(',');
                    this.$delete(this.$api.estateAdvPositions+'/'+ids).then(res=>{
                        if(res.code == 200){
                            this.onload();
                            this.$message.success('删除成功');
                        }else{
                            this.$message.error(res.msg)
                        }
                    });

                },
            });
        },
        onload(){
            this.$post(this.$api.paymentLog,this.params).then(res=>{
                this.list = res.data.data;
            });
        },
    },
    created() {
        this.onload();
    },
    mounted() {}
};
</script>
<style lang="scss" scoped>

</style>
